# -*- coding: utf-8 -*-

import re

# based on and thanks to http://mlha.cz/unicode/
# definition of  similar characters
# {HEX:	[8859-1	,CP1252	,8859-2	,CP1250	,Mac-CE	,CP-852]}
charMap = {
#'\x80':[	''	,'€'	,''	,'€'	,'Ä'	,'Ç'],
'\x80':[	''	,'EUR'	,''	,'EUR'	,'A'	,'C'],
#'\x81':[	''	,''	,''	,''	,'Ā'	,'ü'],
'\x81':[	''	,''	,''	,''	,'A'	,'u'],
#'\x82':[	''	,'‚'	,''	,'‚'	,'ā'	,'é'],
'\x82':[	''	,','	,''	,','	,'a'	,'e'],
#'\x83':[	''	,'ƒ'	,''	,''	,'É'	,'â'],
'\x83':[	''	,'f'	,''	,''	,'E'	,'a'],
#'\x84':[	''	,'„'	,''	,'„'	,'Ą'	,'ä'],
'\x84':[	''	,','	,''	,','	,'A'	,'a'],
#'\x85':[	''	,'…'	,''	,'…'	,'Ö'	,'ů'],
'\x85':[	''	,'...'	,''	,'...'	,'O'	,'u'],
#'\x86':[	''	,'†'	,''	,'†'	,'Ü'	,'ć'],
'\x86':[	''	,'_'	,''	,'_'	,'U'	,'c'],
#'\x87':[	''	,'‡'	,''	,'‡'	,'á'	,'ç'],
'\x87':[	''	,'_'	,''	,'_'	,'a'	,'c'],
#'\x88':[	''	,'ˆ'	,''	,''	,'ą'	,'ł'],
'\x88':[	''	,'_'	,''	,''	,'a'	,'l'],
#'\x89':[	''	,'‰'	,''	,'‰'	,'Č'	,'ë'],
'\x89':[	''	,'_'	,''	,'_'	,'C'	,'e'],
#'\x8a':[	''	,'Š'	,''	,'Š'	,'ä'	,'Ő'],
'\x8a':[	''	,'S'	,''	,'S'	,'a'	,'O'],
#'\x8b':[	''	,'‹'	,''	,'‹'	,'č'	,'ő'],
'\x8b':[	''	,'<'	,''	,'<'	,'c'	,'o'],
#'\x8c':[	''	,'Œ'	,''	,'Ś'	,'Ć'	,'î'],
'\x8c':[	''	,'C'	,''	,'S'	,'C'	,'i'],
#'\x8d':[	''	,''	,''	,'Ť'	,'ć'	,'Ź'],
'\x8d':[	''	,''	,''	,'T'	,'c'	,'Z'],
#'\x8e':[	''	,'Ž'	,''	,'Ž'	,'é'	,'Ä'],
'\x8e':[	''	,'Z'	,''	,'Z'	,'e'	,'A'],
#'\x8f':[	''	,''	,''	,'Ź'	,'Ź'	,'Ć'],
'\x8f':[	''	,''	,''	,'Z'	,'Z'	,'C'],
#'\x90':[	''	,''	,''	,''	,'ź'	,'É'],
'\x90':[	''	,''	,''	,''	,'z'	,'E'],
#'\x91':[	''	,'‘'	,''	,'‘'	,'Ď'	,'Ĺ'],
'\x91':[	''	,'_'	,''	,'_'	,'D'	,'L'],
#'\x92':[	''	,'’'	,''	,'’'	,'í'	,'ĺ'],
'\x92':[	''	,'_'	,''	,'_'	,'i'	,'l'],
#'\x93':[	''	,'“'	,''	,'“'	,'ď'	,'ô'],
'\x93':[	''	,'_'	,''	,'_'	,'d'	,'o'],
#'\x94':[	''	,'”'	,''	,'”'	,'Ē'	,'ö'],
'\x94':[	''	,'_'	,''	,'_'	,'E'	,'o'],
#'\x95':[	''	,'•'	,''	,'•'	,'ē'	,'Ľ'],
'\x95':[	''	,'.'	,''	,'.'	,'e'	,'L'],
#'\x96':[	''	,'–'	,''	,'–'	,'Ė'	,'ľ'],
'\x96':[	''	,'-'	,''	,'-'	,'E'	,'l'],
#'\x97':[	''	,'—'	,''	,'—'	,'ó'	,'Ś'],
'\x97':[	''	,'-'	,''	,'-'	,'o'	,'S'],
#'\x98':[	''	,'˜'	,''	,''	,'ė'	,'ś'],
'\x98':[	''	,'_'	,''	,''	,'e'	,'s'],
#'\x99':[	''	,'™'	,''	,'™'	,'ô'	,'Ö'],
'\x99':[	''	,'TM'	,''	,'TM'	,'o'	,'O'],
#'\x9a':[	''	,'š'	,''	,'š'	,'ö'	,'Ü'],
'\x9a':[	''	,'s'	,''	,'s'	,'o'	,'U'],
#'\x9b':[	''	,'›'	,''	,'›'	,'õ'	,'Ť'],
'\x9b':[	''	,'>'	,''	,'>'	,'o'	,'T'],
#'\x9c':[	''	,'œ'	,''	,'ś'	,'ú'	,'ť'],
'\x9c':[	''	,'_'	,''	,'s'	,'u'	,'t'],
#'\x9d':[	''	,''	,''	,'ť'	,'Ě'	,'Ł'],
'\x9d':[	''	,''	,''	,'t'	,'E'	,'L'],
#'\x9e':[	''	,'ž'	,''	,'ž'	,'ě'	,'×'],
'\x9e':[	''	,'z'	,''	,'z'	,'e'	,'x'],
#'\x9f':[	''	,'Ÿ'	,''	,'ź'	,'ü'	,'č'],
'\x9f':[	''	,'Y'	,''	,'z'	,'u'	,'c'],
#'\xa0':[	''	,''	,''	,''	,'†'	,'á'],
'\xa0':[	''	,''	,''	,''	,'_'	,'a'],
#'\xa1':[	'¡'	,'¡'	,'Ą'	,'ˇ'	,'°'	,'í'],
'\xa1':[	'i'	,'i'	,'A'	,'_'	,'_'	,'i'],
#'\xa2':[	'¢'	,'¢'	,'˘'	,'˘'	,'Ę'	,'ó'],
'\xa2':[	'_'	,'_'	,'_'	,'_'	,'E'	,'o'],
#'\xa3':[	'£'	,'£'	,'Ł'	,'Ł'	,'£'	,'ú'],
'\xa3':[	'GBP'	,'GBP'	,'GBP'	,'GBP'	,'GBP'	,'u'],
#'\xa4':[	'¤'	,'¤'	,'¤'	,'¤'	,'§'	,'Ą'],
'\xa4':[	'_'	,'_'	,'_'	,'_'	,'_'	,'A'],
#'\xa5':[	'¥'	,'¥'	,'Ľ'	,'Ą'	,'•'	,'ą'],
'\xa5':[	'JPY'	,'JPY'	,'L'	,'A'	,'.'	,'a'],
#'\xa6':[	'¦'	,'¦'	,'Ś'	,'¦'	,'¶'	,'Ž'],
'\xa6':[	'|'	,'|'	,'S'	,'|'	,'_'	,'Z'],
#'\xa7':[	'§'	,'§'	,'§'	,'§'	,'ß'	,'ž'],
'\xa7':[	'_'	,'_'	,'_'	,'_'	,'_'	,'z'],
#'\xa8':[	'¨'	,'¨'	,'¨'	,'¨'	,'®'	,'Ę'],
'\xa8':[	'_'	,'_'	,'_'	,'_'	,'(R)'	,'E'],
#'\xa9':[	'©'	,'©'	,'Š'	,'©'	,'©'	,'ę'],
'\xa9':[	'(c)'	,'(c)'	,'S'	,'(c)'	,'(c)'	,'e'],
#'\xaa':[	'ª'	,'ª'	,'Ş'	,'Ş'	,'™'	,'¬'],
'\xaa':[	'_'	,'_'	,'S'	,'S'	,'(TM)'	,'_'],
#'\xab':[	'«'	,'«'	,'Ť'	,'«'	,'ę'	,'ź'],
'\xab':[	'<'	,'<'	,'T'	,'<'	,'e'	,'z'],
#'\xac':[	'¬'	,'¬'	,'Ź'	,'¬'	,'¨'	,'Č'],
'\xac':[	'_'	,'_'	,'Z'	,'_'	,'_'	,'C'],
#'\xad':[	''	,''	,''	,''	,'≠'	,'ş'],
'\xad':[	''	,''	,''	,''	,'!='	,'s'],
#'\xae':[	'®'	,'®'	,'Ž'	,'®'	,'ģ'	,'«'],
'\xae':[	'(R)'	,'(R)'	,'Z'	,'(R)'	,'g'	,'<'],
#'\xaf':[	'¯'	,'¯'	,'Ż'	,'Ż'	,'Į'	,'»'],
'\xaf':[	'_'	,'_'	,'Z'	,'Z'	,'I'	,'>'],
#'\xb0':[	'°'	,'°'	,'°'	,'°'	,'į'	,'░'],
'\xb0':[	'_'	,'_'	,'_'	,'_'	,'i'	,'_'],
#'\xb1':[	'±'	,'±'	,'ą'	,'±'	,'Ī'	,'▒'],
'\xb1':[	'+-'	,'+-'	,'a'	,'+-'	,'I'	,'_'],
#'\xb2':[	'²'	,'²'	,'˛'	,'˛'	,'≤'	,'▓'],
'\xb2':[	'_'	,'_'	,'_'	,'_'	,'<='	,'_'],
#'\xb3':[	'³'	,'³'	,'ł'	,'ł'	,'≥'	,'│'],
'\xb3':[	'_'	,'_'	,'l'	,'l'	,'>='	,'|'],
#'\xb4':[	'´'	,'´'	,'´'	,'´'	,'ī'	,'┤'],
'\xb4':[	'_'	,'_'	,'_'	,'_'	,'i'	,'|'],
#'\xb5':[	'µ'	,'µ'	,'ľ'	,'µ'	,'Ķ'	,'Á'],
'\xb5':[	'_'	,'_'	,'I'	,'_'	,'K'	,'A'],
#'\xb6':[	'¶'	,'¶'	,'ś'	,'¶'	,'∂'	,'Â'],
'\xb6':[	'_'	,'_'	,'s'	,'_'	,'_'	,'A'],
#'\xb7':[	'·'	,'·'	,'ˇ'	,'·'	,'∑'	,'Ě'],
'\xb7':[	'.'	,'.'	,'_'	,'.'	,'_'	,'E'],
#'\xb8':[	'¸'	,'¸'	,'¸'	,'¸'	,'ł'	,'Ş'],
'\xb8':[	','	,','	,','	,','	,'l'	,'S'],
#'\xb9':[	'¹'	,'¹'	,'š'	,'ą'	,'Ļ'	,'╣'],
'\xb9':[	'_'	,'_'	,'s'	,'a'	,'L'	,'|'],
#'\xba':[	'º'	,'º'	,'ş'	,'ş'	,'ļ'	,'║'],
'\xba':[	'_'	,'_'	,'s'	,'s'	,'l'	,'|'],
#'\xbb':[	'»'	,'»'	,'ť'	,'»'	,'Ľ'	,'╗'],
'\xbb':[	'>'	,'>'	,'t'	,'>'	,'L'	,'|'],
#'\xbc':[	'¼'	,'¼'	,'ź'	,'Ľ'	,'ľ'	,'╝'],
'\xbc':[	'_'	,'_'	,'z'	,'L'	,'I'	,'|'],
#'\xbd':[	'½'	,'½'	,'˝'	,'˝'	,'Ĺ'	,'Ż'],
'\xbd':[	'_'	,'_'	,'_'	,'_'	,'L'	,'Z'],
#'\xbe':[	'¾'	,'¾'	,'ž'	,'ľ'	,'ĺ'	,'ż'],
'\xbe':[	'_'	,'_'	,'z'	,'I'	,'I'	,'Z'],
#'\xbf':[	'¿'	,'¿'	,'ż'	,'ż'	,'Ņ'	,'┐'],
'\xbf':[	'_'	,'_'	,'z'	,'z'	,'N'	,'|'],
#'\xc0':[	'À'	,'À'	,'Ŕ'	,'Ŕ'	,'ņ'	,'└'],
'\xc0':[	'A'	,'A'	,'R'	,'R'	,'n'	,'|'],
#'\xc1':[	'Á'	,'Á'	,'Á'	,'Á'	,'Ń'	,'┴'],
'\xc1':[	'A'	,'A'	,'A'	,'A'	,'N'	,'|'],
#'\xc2':[	'Â'	,'Â'	,'Â'	,'Â'	,'¬'	,'┬'],
'\xc2':[	'A'	,'A'	,'A'	,'A'	,'_'	,'|'],
#'\xc3':[	'Ã'	,'Ã'	,'Ă'	,'Ă'	,'√'	,'├'],
'\xc3':[	'A'	,'A'	,'A'	,'A'	,'_'	,'|'],
#'\xc4':[	'Ä'	,'Ä'	,'Ä'	,'Ä'	,'ń'	,'─'],
'\xc4':[	'A'	,'A'	,'A'	,'A'	,'n'	,'_'],
#'\xc5':[	'Å'	,'Å'	,'Ĺ'	,'Ĺ'	,'Ň'	,'┼'],
'\xc5':[	'A'	,'A'	,'L'	,'L'	,'N'	,'|'],
#'\xc6':[	'Æ'	,'Æ'	,'Ć'	,'Ć'	,'∆'	,'Ă'],
'\xc6':[	'A'	,'A'	,'C'	,'C'	,'_'	,'A'],
#'\xc7':[	'Ç'	,'Ç'	,'Ç'	,'Ç'	,'«'	,'ă'],
'\xc7':[	'C'	,'C'	,'C'	,'C'	,'<'	,'a'],
#'\xc8':[	'È'	,'È'	,'Č'	,'Č'	,'»'	,'╚'],
'\xc8':[	'E'	,'E'	,'C'	,'C'	,'>'	,'|'],
#'\xc9':[	'É'	,'É'	,'É'	,'É'	,'…'	,'╔'],
'\xc9':[	'E'	,'E'	,'E'	,'E'	,'...'	,'|'],
#'\xca':[	'Ê'	,'Ê'	,'Ę'	,'Ę'	,''	,'╩'],
'\xca':[	'E'	,'E'	,'E'	,'E'	,''	,'|'],
#'\xcb':[	'Ë'	,'Ë'	,'Ë'	,'Ë'	,'ň'	,'╦'],
'\xcb':[	'E'	,'E'	,'E'	,'E'	,'n'	,'|'],
#'\xcc':[	'Ì'	,'Ì'	,'Ě'	,'Ě'	,'Ő'	,'╠'],
'\xcc':[	'I'	,'I'	,'E'	,'E'	,'O'	,'|'],
#'\xcd':[	'Í'	,'Í'	,'Í'	,'Í'	,'Õ'	,'═'],
'\xcd':[	'I'	,'I'	,'I'	,'I'	,'O'	,'='],
#'\xce':[	'Î'	,'Î'	,'Î'	,'Î'	,'ő'	,'╬'],
'\xce':[	'I'	,'I'	,'I'	,'I'	,'o'	,'|'],
#'\xcf':[	'Ï'	,'Ï'	,'Ď'	,'Ď'	,'Ō'	,'¤'],
'\xcf':[	'I'	,'I'	,'D'	,'D'	,'O'	,'_'],
#'\xd0':[	'Ð'	,'Ð'	,'Đ'	,'Đ'	,'–'	,'đ'],
'\xd0':[	'D'	,'D'	,'D'	,'D'	,'-'	,'d'],
#'\xd1':[	'Ñ'	,'Ñ'	,'Ń'	,'Ń'	,'—'	,'Đ'],
'\xd1':[	'N'	,'N'	,'N'	,'N'	,'-'	,'D'],
#'\xd2':[	'Ò'	,'Ò'	,'Ň'	,'Ň'	,'“'	,'Ď'],
'\xd2':[	'O'	,'O'	,'N'	,'N'	,'_'	,'D'],
#'\xd3':[	'Ó'	,'Ó'	,'Ó'	,'Ó'	,'”'	,'Ë'],
'\xd3':[	'O'	,'O'	,'O'	,'O'	,'_'	,'E'],
#'\xd4':[	'Ô'	,'Ô'	,'Ô'	,'Ô'	,'‘'	,'ď'],
'\xd4':[	'O'	,'O'	,'O'	,'O'	,'_'	,'d'],
#'\xd5':[	'Õ'	,'Õ'	,'Ő'	,'Ő'	,'’'	,'Ň'],
'\xd5':[	'O'	,'O'	,'O'	,'O'	,'_'	,'N'],
#'\xd6':[	'Ö'	,'Ö'	,'Ö'	,'Ö'	,'÷'	,'Í'],
'\xd6':[	'O'	,'O'	,'O'	,'O'	,':'	,'I'],
#'\xd7':[	'×'	,'×'	,'×'	,'×'	,'◊'	,'Î'],
'\xd7':[	'x'	,'x'	,'x'	,'x'	,'_'	,'I'],
#'\xd8':[	'Ø'	,'Ø'	,'Ř'	,'Ř'	,'ō'	,'ě'],
'\xd8':[	'O'	,'O'	,'R'	,'R'	,'o'	,'e'],
#'\xd9':[	'Ù'	,'Ù'	,'Ů'	,'Ů'	,'Ŕ'	,'┘'],
'\xd9':[	'U'	,'U'	,'U'	,'U'	,'R'	,'|'],
#'\xda':[	'Ú'	,'Ú'	,'Ú'	,'Ú'	,'ŕ'	,'┌'],
'\xda':[	'U'	,'U'	,'U'	,'U'	,'r'	,'|'],
#'\xdb':[	'Û'	,'Û'	,'Ű'	,'Ű'	,'Ř'	,'█'],
'\xdb':[	'U'	,'U'	,'U'	,'U'	,'R'	,'|'],
#'\xdc':[	'Ü'	,'Ü'	,'Ü'	,'Ü'	,'‹'	,'▄'],
'\xdc':[	'U'	,'U'	,'U'	,'U'	,'<'	,'_'],
#'\xdd':[	'Ý'	,'Ý'	,'Ý'	,'Ý'	,'›'	,'Ţ'],
'\xdd':[	'Y'	,'Y'	,'Y'	,'Y'	,'>'	,'T'],
#'\xde':[	'Þ'	,'Þ'	,'Ţ'	,'Ţ'	,'ř'	,'Ů'],
'\xde':[	'_'	,'_'	,'T'	,'T'	,'r'	,'U'],
#'\xdf':[	'ß'	,'ß'	,'ß'	,'ß'	,'Ŗ'	,'▀'],
'\xdf':[	'_'	,'_'	,'_'	,'_'	,'R'	,'_'],
#'\xe0':[	'à'	,'à'	,'ŕ'	,'ŕ'	,'ŗ'	,'Ó'],
'\xe0':[	'a'	,'a'	,'r'	,'r'	,'r'	,'O'],
#'\xe1':[	'á'	,'á'	,'á'	,'á'	,'Š'	,'ß'],
'\xe1':[	'a'	,'a'	,'a'	,'a'	,'S'	,'_'],
#'\xe2':[	'â'	,'â'	,'â'	,'â'	,'‚'	,'Ô'],
'\xe2':[	'a'	,'a'	,'a'	,'a'	,','	,'O'],
#'\xe3':[	'ã'	,'ã'	,'ă'	,'ă'	,'„'	,'Ń'],
'\xe3':[	'a'	,'a'	,'a'	,'a'	,'_'	,'N'],
#'\xe4':[	'ä'	,'ä'	,'ä'	,'ä'	,'š'	,'ń'],
'\xe4':[	'a'	,'a'	,'a'	,'a'	,'s'	,'n'],
#'\xe5':[	'å'	,'å'	,'ĺ'	,'ĺ'	,'Ś'	,'ň'],
'\xe5':[	'a'	,'a'	,'I'	,'I'	,'S'	,'n'],
#'\xe6':[	'æ'	,'æ'	,'ć'	,'ć'	,'ś'	,'Š'],
'\xe6':[	'_'	,'_'	,'c'	,'c'	,'s'	,'S'],
#'\xe7':[	'ç'	,'ç'	,'ç'	,'ç'	,'Á'	,'š'],
'\xe7':[	'c'	,'c'	,'c'	,'c'	,'A'	,'s'],
#'\xe8':[	'è'	,'è'	,'č'	,'č'	,'Ť'	,'Ŕ'],
'\xe8':[	'e'	,'e'	,'c'	,'c'	,'T'	,'R'],
#'\xe9':[	'é'	,'é'	,'é'	,'é'	,'ť'	,'Ú'],
'\xe9':[	'e'	,'e'	,'e'	,'e'	,'t'	,'U'],
#'\xea':[	'ê'	,'ê'	,'ę'	,'ę'	,'Í'	,'ŕ'],
'\xea':[	'e'	,'e'	,'e'	,'e'	,'I'	,'r'],
#'\xeb':[	'ë'	,'ë'	,'ë'	,'ë'	,'Ž'	,'Ű'],
'\xeb':[	'e'	,'e'	,'e'	,'e'	,'Z'	,'U'],
#'\xec':[	'ì'	,'ì'	,'ě'	,'ě'	,'ž'	,'ý'],
'\xec':[	'i'	,'i'	,'e'	,'e'	,'z'	,'y'],
#'\xed':[	'í'	,'í'	,'í'	,'í'	,'Ū'	,'Ý'],
'\xed':[	'i'	,'i'	,'i'	,'i'	,'U'	,'Y'],
#'\xee':[	'î'	,'î'	,'î'	,'î'	,'Ó'	,'ţ'],
'\xee':[	'i'	,'i'	,'i'	,'i'	,'O'	,'t'],
#'\xef':[	'ï'	,'ï'	,'ď'	,'ď'	,'Ô'	,'´'],
'\xef':[	'i'	,'i'	,'d'	,'d'	,'O'	,'_'],
#'\xf0':[	'ð'	,'ð'	,'đ'	,'đ'	,'ū'	,''],
'\xf0':[	'_'	,'_'	,'d'	,'d'	,'u'	,''],
#'\xf1':[	'ñ'	,'ñ'	,'ń'	,'ń'	,'Ů'	,'˝'],
'\xf1':[	'n'	,'n'	,'n'	,'n'	,'U'	,'_'],
#'\xf2':[	'ò'	,'ò'	,'ň'	,'ň'	,'Ú'	,'˛'],
'\xf2':[	'o'	,'o'	,'n'	,'n'	,'U'	,'_'],
#'\xf3':[	'ó'	,'ó'	,'ó'	,'ó'	,'ů'	,'ˇ'],
'\xf3':[	'o'	,'o'	,'o'	,'o'	,'u'	,'_'],
#'\xf4':[	'ô'	,'ô'	,'ô'	,'ô'	,'Ű'	,'˘'],
'\xf4':[	'o'	,'o'	,'o'	,'o'	,'U'	,'_'],
#'\xf5':[	'õ'	,'õ'	,'ő'	,'ő'	,'ű'	,'§'],
'\xf5':[	'o'	,'o'	,'o'	,'o'	,'u'	,'_'],
#'\xf6':[	'ö'	,'ö'	,'ö'	,'ö'	,'Ų'	,'÷'],
'\xf6':[	'o'	,'o'	,'o'	,'o'	,'U'	,':'],
#'\xf7':[	'÷'	,'÷'	,'÷'	,'÷'	,'ų'	,'¸'],
'\xf7':[	':'	,':'	,':'	,':'	,'U'	,','],
#'\xf8':[	'ø'	,'ø'	,'ř'	,'ř'	,'Ý'	,'°'],
'\xf8':[	'_'	,'_'	,'r'	,'r'	,'Y'	,'_'],
#'\xf9':[	'ù'	,'ù'	,'ů'	,'ů'	,'ý'	,'¨'],
'\xf9':[	'u'	,'u'	,'u'	,'u'	,'y'	,'_'],
#'\xfa':[	'ú'	,'ú'	,'ú'	,'ú'	,'ķ'	,'˙'],
'\xfa':[	'u'	,'u'	,'u'	,'u'	,'k'	,'_'],
#'\xfb':[	'û'	,'û'	,'ű'	,'ű'	,'Ż'	,'ű'],
'\xfb':[	'u'	,'u'	,'u'	,'u'	,'Z'	,'u'],
#'\xfc':[	'ü'	,'ü'	,'ü'	,'ü'	,'Ł'	,'Ř'],
'\xfc':[	'u'	,'u'	,'u'	,'u'	,'L'	,'R'],
#'\xfd':[	'ý'	,'ý'	,'ý'	,'ý'	,'ż'	,'ř'],
'\xfd':[	'y'	,'y'	,'y'	,'y'	,'z'	,'r'],
#'\xfe':[	'þ'	,'þ'	,'ţ'	,'ţ'	,'Ģ'	,'■'],
'\xfe':[	'p'	,'p'	,'t'	,'t'	,'G'	,'_'],
#'\xff':[	'ÿ'	,'ÿ'	,'˙'	,'˙'	,'ˇ'	,''],
'\xff':[	'y'	,'y'	,'_'	,'_'	,'_'	,''],
}


def plain(in_s, enc='cp1250'):
    # using global variable to compile it just once - first time, when the module is imported
    global charMap

    # selecting proper column/encoding index from global carMap dictionary
    # {HEX:	[8859-1	,CP1252	,8859-2	,CP1250	,Mac-CE	,CP-852]}
    enci = 3                        # default source encoding is cp1250
    if   enc == '8859-1': enci = 0
    elif enc == 'CP1252' or enc == 'cp1252' or enc == 'cp-1252' or enc == 'CP-1252': enci = 1
    elif enc == '8859-2': enci = 2
    elif enc == 'CP1250' or enc == 'cp1250' or enc == 'cp-1250' or enc == 'CP-1250': enci = 3
    elif enc == 'Mac-CE': enci = 4
    elif enc == 'CP-852' or enc == 'cp852'  or enc == 'cp-852'  or enc == 'CP852': enci = 5
    else: print 'encoding \'' + str(enc) + '\' is not supported.'

    # replacing
    out_s = ''
    for char in in_s:
        if charMap.has_key(char)    : out_s += charMap[char][enci]
        else                        : out_s += char
    return out_s


def main():
    utf8 = u'ěščřžýáíé ĚŠČŘŽÝÁÍÉ Ůů €©' # this file is utf8, but I need an cp1250 string to show example
    cp1250 = utf8.encode('cp1250')      # thus I have to convert utf8 to cp1250 (but you don't need to!)
    print '# supports: 8859-1, CP1252, 8859-2, CP1250, Mac-CE, CP-852'
    print '>>> print plain("' + utf8 + '", "cp1250")\n>>> ' + plain(cp1250,"cp1250"),


if __name__ == "__main__":
    main()
